/*
 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2018-2019. All rights reserved.
 * Description: SOCAUDIO USER ERROR LOG MODULE INTERFACE
*/
#ifndef SOCAUDIO_USER_ERROR_LOG_H
#define SOCAUDIO_USER_ERROR_LOG_H

/**
 * @addtogroup connectivity_drivers_non_os_log
 * @{
 */
/* user defined */
#define ERROR_FILL_NO_RESULT   0
#define LOG_ERROR_VERSION    ""
/* first-level:EventID */
typedef enum {
    ERROR_MCU_STABILITY = 0x81,
    ERROR_BLUETOOTH = 0x82,
    ERROR_GESTRUE_RECOGNITION = 0x83,
    ERROR_APPLICATION = 0x94,
    ERROR_POWER = 0xA5,
    ERROR_MODULE_END
} log_error_module_t;

/* second-level:Info1 */
typedef enum {
    ERROR_RESTART_ERROR = 0x01,
    ERROR_COMM_ERROR = 0x02,
    ERROR_RESOURCE = 0x03,
    ERROR_PERIPHERAL = 0x04,
    ERROR_MCU_STABILITY_INFO1_END
} error_mcu_stability_info1_t;

typedef enum {
    ERROR_BT_SERVICE = 0x00,
    ERROR_BT_STACK = 0x01,
    ERROR_BLUETOOTH_INFO1_END
} error_bluetooth_info1_t;

typedef enum {
    ERROR_TRANSDUCER_ABNORMAL = 0x01,
    ERROR_MEMORY = 0x04,
    ERROR_BUFFER_STATE = 0x05,
    ERROR_ALGORITHM_OUTPUT_ABNORMAL = 0x06,
    ERROR_GESTRUE_RECOGNITION_INFO1_END
} error_gestrue_recognition_info1_t;

typedef enum {
    ERROR_OTA_UPGRADE = 0x01,
    ERROR_APPLICATION_INFO1_END
} error_application_info1_t;

typedef enum {
    ERROR_POWER_EXCEPTION = 0x01,
    ERROR_POWER_INFO1_END
} error_power_info1_t;

/* third-level:Info2 */
typedef enum {
    ERROR_SOFTWARE_DOG_OVERTIME = 0x01,
    ERROR_INTERRUPT_TOO_MUCH = 0x02,
    ERROR_DEVICE_CONTINUE_READ_ABNORMAL_RESET = 0x03,
    ERROR_HARD_DOG_OVERTIME = 0x04,
    ERROR_HARDWARE_POWEROFF_ABNORMAL = 0x05,
    ERROR_OVER_TEMPERATURE_POWEROFF = 0x06,
    ERROR_HEARTBEAT_PACKETS_SIX_TIMES = 0x07,
    ERROR_ABNORMAL_REBOOT = 0x08,
    ERROR_RPC_REBOOT = 0x09,
    ERROR_PANIC_BT = 0x0A,
    ERROR_PANIC_APP = 0x0B,
    ERROR_RESTART_ERROR_INFO2_END
} error_restart_error_info2_t;

typedef enum {
    ERROR_COMM_M2B_FAILURE = 0x01,
    ERROR_COMM_M2D_FAILURE = 0x02,
    ERROR_COMM_B2M_FAILURE = 0x03,
    ERROR_COMM_B2D_FAILURE = 0x04,
    ERROR_COMM_D2M_FAILURE = 0x05,
    ERROR_COMM_D2B_FAILURE = 0x06,
    ERROR_OBTAIN_BLUETOOTH_NAME_ERROR = 0x07,
    ERROR_DUAL_CORE_APPLY_SVR_MEMORY_FAILURE = 0x08,
    ERROR_LOST_LAST_PACKET = 0x09,
    ERROR_LOST_FIRST_PACKET = 0x0A,
    ERROR_RECEIVE_PACKET_CRC_ERROR = 0x0B,
    ERROR_HEADSET2BOX_COMMU_ERROR = 0x0C,
    ERROR_BOX2HEADSET_COMMU_ERROR = 0x0D,
    ERROR_CODE_COMMU_CRC_ERROR = 0x0E,
    ERROR_COMM_ERROR_INFO2_END
} error_comm_error_info2_t;

typedef enum {
    ERROR_CREATE_TIMER_FAILURE = 0x01,
    ERROR_TIMER_OPEN_FAILURE = 0x02,
    ERROR_TIMER_CLOSE_FAILURE = 0x03,
    ERROR_SVR_APPLY_MEMORY_FAILURE = 0x04,
    ERROR_SYS_APPLY_MEMORY_FAILURE = 0x05,
    ERROR_RESOURCE_INFO2_END
} error_resource_info2_t;

typedef enum {
    ERROR_I2C_READ_ERROR = 0x01,
    ERROR_I2C_WRITE_ERROR = 0x02,
    ERROR_SENSOR_SET_PARAMETER_ERROR = 0x03,
    ERROR_SENSOR_OPEN_ERROR = 0x04,
    ERROR_SENSOR_READ_ERROR = 0x05,
    ERROR_SENSOR_CLOSE_ERROR = 0x06,
    ERROR_FLASH_WRITE_FAILURE = 0x07,
    ERROR_FLASH_ERASE_SECTOR_ERROR = 0x08,
    ERROR_FLASH_ERASE_WHOLE_AREA_ERROR = 0x09,
    ERROR_FLASH_READ_FAILURE = 0x0A,
    ERROR_CODEC_CONTROL_FAILURE = 0x0B,
    ERROR_SPI_READ_ERROR = 0x0C,
    ERROR_SPI_WRITE_ERROR = 0x0D,
    ERROR_PERIPHERAL_INFO2_END
} error_peripheral_info2_t;

typedef enum {
    ERROR_BT_PROFILE_SERVICE_ERR = 0x01,
    ERROR_BT_CONNECT_MGR_ERR = 0x02,
    ERROR_BT_TWS_MGR_ERR = 0x03,
    ERROR_BT_DTS_MGR_ERR = 0x04,
    ERROR_BT_DATA_MGR_ERR = 0x05,
    ERROR_BT_GAP_SERVICE_ERR = 0x06,
    ERROR_BT_PDL_ERR = 0x07,
    ERROR_BT_GATT_MGR_ERR = 0x08,
    ERROR_BT_SERVICE_INFO2_END
} error_bt_service_info2_t;

typedef enum {
    ERROR_BT_STACK_GAP_ERR = 0x01,
    ERROR_BT_STACK_SDP_ERR = 0x02,
    ERROR_BT_STACK_SMP_ERR = 0x03,
    ERROR_BT_STACK_A2DP_ERR = 0x04,
    ERROR_BT_STACK_HFP_ERR = 0x05,
    ERROR_BT_STACK_AVRCP_ERR = 0x06,
    ERROR_BT_STACK_SPP_ERR = 0x07,
    ERROR_BT_STACK_GATT_ERR = 0x08,
    ERROR_BT_STACK_AVDTP_ERR = 0x09,
    ERROR_BT_STACK_AVCTP_ERR = 0x0A,
    ERROR_BT_STACK_RFCOMM_ERR = 0x0B,
    ERROR_BT_L2CAP_ERR = 0x0C,
    ERROR_BT_STACK_HCI_ERR = 0x0D,
    ERROR_BT_STACK_ASCP_ERR = 0x0E,
    ERROR_BT_STACK_ASMP_ERR = 0x0F,
    ERROR_BT_STACK_JITWS_ERR = 0x10,
    ERROR_BT_STACK_DADP_ERR = 0x11,
    ERROR_BT_STACK_ADAPTER_ERR = 0x12,
    ERROR_BT_HCI_SET_LOCAL_MAC_CMD_STAT_FAIL = 0x13,
    ERROR_BT_HCI_SET_LOCAL_MAC_CMD_CMPL_FAIL = 0x14,
    ERROR_BT_HCI_SET_ROLE_CMD_STAT_FAIL = 0x15,
    ERROR_BT_HCI_SET_ROLE_CMD_CMPL_FAIL = 0x16,
    ERROR_BT_HCI_SYN_BTC_DATA_CMD_STAT_FAIL = 0x17,
    ERROR_BT_HCI_SYN_BTC_DATA_CMD_CMPL_FAIL = 0x18,
    ERROR_BT_HCI_SET_JOINT_STAT_CMD_STAT_FAIL = 0x19,
    ERROR_BT_HCI_SET_JOINT_STAT_CMD_CMPL_FAIL = 0x1A,
    ERROR_BT_HCI_START_TOG_CMD_STAT_FAIL = 0x1B,
    ERROR_BT_HCI_START_TOG_CMD_CMPL_FAIL = 0x1C,
    ERROR_BT_HCI_GET_BTCLK_CMD_STAT_FAIL = 0x1D,
    ERROR_BT_HCI_GET_BTCLK_CMD_CMPL_FAIL = 0x1E,
    ERROR_BT_HCI_PARSE_BTC_DATA_CMD_STAT_FAIL = 0x1F,
    ERROR_BT_HCI_PARSE_BTC_DATA_CMD_CMPL_FAIL = 0x20,
    ERROR_BT_HCI_NOTIFY_ESCO_START_CMD_STAT_FAIL = 0x21,
    ERROR_BT_HCI_NOTIFY_ESCO_START_CMD_CMPL_FAIL = 0x22,
    ERROR_BT_HCI_STOP_TOG_CMD_STAT_FAIL = 0x23,
    ERROR_BT_HCI_STOP_TOG_CMD_CMPL_FAIL = 0x24,
    ERROR_BT_HCI_GET_TOGCNT_CMD_STAT_FAIL = 0x25,
    ERROR_BT_HCI_GET_TOGCNT_CMD_CMPL_FAIL = 0x26,
    ERROR_BT_HCI_HO_PREPARE_CMD_STAT_FAIL = 0x27,
    ERROR_BT_HCI_HO_PREPARE_CMD_CMPL_FAIL = 0x28,
    ERROR_BT_HCI_HO_PREPARE_FINISH_CMD_STAT_FAIL = 0x29,
    ERROR_BT_HCI_HO_PREPARE_FINISH_CMD_CMPL_FAIL = 0x2A,
    ERROR_BT_HCI_HO_START_CMD_STAT_FAIL = 0x2B,
    ERROR_BT_HCI_HO_START_CMD_CMPL_FAIL = 0x2C,
    ERROR_BT_HCI_HO_FINISH_CMD_STAT_FAIL = 0x2D,
    ERROR_BT_HCI_HO_FINISH_CMD_CMPL_FAIL = 0x2E,
    ERROR_BT_HCI_SYN_BTC_PARA_CMD_STAT_FAIL = 0x2F,
    ERROR_BT_HCI_SYN_BTC_PARA_CMD_CMPL_FAIL = 0x30,
    ERROR_BT_HCI_PAUSE_LINK_SCHEDULE_CMD_STAT_FAIL = 0x31,
    ERROR_BT_HCI_PAUSE_LINK_SCHEDULE_CMD_CMPL_FAIL = 0x32,
    ERROR_BT_HCI_GET_BTCLK_TOGCNT_CMD_STAT_FAIL = 0x33,
    ERROR_BT_HCI_GET_BTCLK_TOGCNT_CMD_CMPL_FAIL = 0x34,
    ERROR_BT_HCI_GET_TOGCNT_VOL_CMD_STAT_FAIL = 0x35,
    ERROR_BT_HCI_GET_TOGCNT_VOL_CMD_CMPL_FAIL = 0x36,
    ERROR_BT_HCI_NOTIFY_BTC_TX_CLEAR_STAT_FAIL = 0x37,
    ERROR_BT_HCI_NOTIFY_BTC_TX_CLEAR_CMPL_FAIL = 0x38,
    ERROR_BT_HCI_EXIT_SNIFF_FAIL = 0x39,
    ERROR_BT_HCI_ROLE_SWITCH_FAIL = 0x3A,
    ERROR_BT_STACK_INFO2_END
} error_bt_stack_info2_t;

typedef enum {
    ERROR_OPEN_TRANSDUCER = 0x01,
    ERROR_RECOVERY_TRANSDUCER = 0x02,
    ERROR_RECOVERY_ACC_ERROR = 0x01,
    ERROR_RECOVERY_PROXIMITY_ERROR = 0x02,
    ERROR_RECOVERY_CAP_ERROR = 0x03,
    ERROR_TRANSDUCER_ABNORMAL_INFO2_END
} error_transducer_abnormal_info2_t;

typedef enum {
    ERROR_APPLY_MEMORY_FAILURE = 0x01,
    ERROR_MEMORY_INFO2_END
} error_memory_info2_t;

typedef enum {
    ERROR_NO_IDLE_BUFFER = 0x01,
    ERROR_BUFFER_STATE_ERROR = 0x02,
    ERROR_BUFFER_STATE_INFO2_END
} error_buffer_state_info2_t;

typedef enum {
    ERROR_CLICK_ALGORITHM = 0x01,
    ERROR_SLIDE_ALGORITHM = 0x02,
    ERROR_LONG_PRESS_ALGORITHM = 0x03,
    ERROR_ALGORITHM_OUTPUT_ABNORMAL_INFO2_END
} error_algorithm_output_abnormal_info2_t;

typedef enum {
    ERROR_ONLINE_UPGRADE_FAILURE = 0x01,
    ERROR_SILENT_UPGRADE_FAILURE = 0x02,
    ERROR_FOREGROUND_UPGRADE_FAILURE = 0x03,
    ERROR_OTA_UPGRADE_INFO2_END
} error_ota_upgrade_info2_t;

typedef enum {
    ERROR_TEMPERATURE_ALARM = 0x01,
    ERROR_BATTERY_CAP_ABNORMAL = 0x02,
    ERROR_BATTERY_CONSUMPTION_ABNORMAL = 0x03,
    ERROR_NO_STANDBY_WAKEUP_ABNORMAL = 0x04,
    ERROR_FREQUENT_AUTO_RESTART_ABNORMAL = 0x05,
    ERROR_APP_POWER_COMSUMPTION_ABNORMAL = 0x06,
    ERROR_STANDBY_POWER_COMSUMPTION_ABNORMAL = 0x07,
    ERROR_POWER_EXCEPTION_INFO2_END
} error_power_exception_info2_t;

/* forth-level:Info3 */
typedef enum {
    ERROR_ERROR_CODE_SOFTWARE_DOG_RESET_CHIP = 0x01,
    ERROR_ERROR_CODE_SOFTWARE_DOG_RESET_APP = 0x02,
    ERROR_ERROR_CODE_SOFTWARE_DOG_RESET_HIFI = 0x03,
    ERROR_ERROR_CODE_SOFTWARE_DOG_RESET_AXI = 0x04,
    ERROR_SOFTWARE_DOG_OVERTIME_INFO3_END
} error_software_dog_overtime_info3_t;

typedef enum {
    ERROR_ABNORMAL_REBOOT_CHIP_WDT = 0x01,
    ERROR_ABNORMAL_REBOOT_BT_RPC_TIMEOUT = 0x02,
    ERROR_ABNORMAL_REBOOT_BT_HARDFAULT = 0x03,
    ERROR_ABNORMAL_REBOOT_BT_NMIFAULT = 0x04,
    ERROR_ABNORMAL_REBOOT_BT_WDT_FORCE_REBOOT = 0x05,
    ERROR_ABNORMAL_REBOOT_BUCK1_PROTECT  = 0x06,
    ERROR_ABNORMAL_REBOOT_BUCK2_PROTECT = 0x07,
    ERROR_ABNORMAL_REBOOT_DSP_WDT = 0x08,
    ERROR_ABNORMAL_REBOOT_DSP_AXI_LOCK = 0x09,
    ERROR_ABNORMAL_REBOOT_DSP_FORCE_REBOOT = 0x0A,
    ERROR_ABNORMAL_REBOOT_APP_WDT = 0x0B,
    ERROR_ABNORMAL_REBOOT_APP_HARDFAULT = 0x0C,
    ERROR_ABNORMAL_REBOOT_APP_NMIFAULT = 0x0D,
    ERROR_ABNORMAL_REBOOT_APP_FORCE_REBOOT = 0x0E,
    ERROR_ABNORMAL_REBOOT_APP_RPC_TIMEOUT = 0x0F,
    ERROR_ABNORMAL_REBOOT_APP_DAEMON = 0x80,
    ERROR_ABNORMAL_REBOOT_APP_SAFEMODE = 0x81,
    ERROR_ABNORMAL_REBOOT_APP_SHIPMODE_REBOOT = 0x82,
    ERROR_ABNORMAL_REBOOT_APP_SHIPMODE_SHUTDOWN = 0x83,
    ERROR_ABNORMAL_REBOOT_APP_UX = 0x84,
    ERROR_ABNORMAL_REBOOT_APP_AT = 0x85,
    ERROR_ABNORMAL_REBOOT_APP_FOTA = 0x86,
    ERROR_ABNORMAL_REBOOT_APP_AGINGTEST = 0x87,
    ERROR_ABNORMAL_REBOOT_APP_UNKNOWN = 0x88,
    ERROR_ABNORMAL_REBOOT_BT_RESET_UNKNOWN = 0x10,
    ERROR_ABNORMAL_REBOOT_BT_XIP_HARDFAULT = 0x11,
    ERROR_ABNORMAL_REBOOT_INFO3_END
} error_abnormal_reboot_info3_t;

typedef enum {
    ERROR_BOX2HEADSET_COMMU_LEFT_ERROR = 0x01,
    ERROR_BOX2HEADSET_COMMU_RIGHT_ERROR = 0x02,
    ERROR_BOX2HEADSET_COMMU_ERROR_INFO3_END
} error_box2headset_commu_error_info3_t;

typedef enum {
    ERROR_BT_PROFILE_A2DP_CONNECT_TIMEOUT = 0x01,
    ERROR_BT_PROFILE_HFP_CONNECT_TIMEOUT = 0x02,
    ERROR_BT_PROFILE_SPP_CONNECT_TIMEOUT = 0x03,
    ERROR_BT_PROFILE_A2DP_NO_CONNECT = 0x04,
    ERROR_BT_PROFILE_HFP_NO_CONNECT = 0x05,
    ERROR_BT_PROFILE_A2DP_DISCONNECT_TIMEOUT = 0x06,
    ERROR_BT_PROFILE_HFP_DISCONNECT_TIMEOUT = 0x07,
    ERROR_BT_PROFILE_SPP_DISCONNECT_TIMEOUT = 0x08,
    ERROR_BT_PROFILE_SERVICE_ERR_INFO3_END
} error_bt_profile_service_err_info3_t;

typedef enum {
    ERROR_BT_TWS_PAIR_FAILD = 0x01,
    ERROR_BT_TWS_CONNECT_FAILD = 0x02,
    ERROR_BT_MOBILE_PAIR_FAILD = 0x03,
    ERROR_BT_MOBILE_ACL_CONNECT_FAILD = 0x04,
    ERROR_BT_MOBILE_PROFILE_CONNECT_FAILD = 0x05,
    ERROR_BT_TWS_ROL_SWITCH_FAILD = 0x06,
    ERROR_BT_TWS_SPP_CONNECT_FAILD = 0x07,
    ERROR_BT_CLOUD_TOKEN_ERROR_FAILD = 0x08,
    ERROR_BT_EARBUDS_MASTER_WAIT_SLAVE_FAILD = 0x09,
    ERROR_BT_MASTER_CONNRECT_MOBILE_FAILD = 0x0A,
    ERROR_BT_SLAVE_CONNRECT_MASTER_FAILD = 0x0B,
    ERROR_BT_CONNECT_MGR_ERR_INFO3_END
} error_bt_connect_mgr_err_info3_t;

typedef enum {
    ERROR_BT_TWS_MGR_START_JOINT_FAIL_NO_ACTION = 0x01,
    ERROR_BT_TWS_MGR_START_JOINT_FAIL_TWS_DISC = 0x02,
    ERROR_BT_TWS_MGR_START_JOINT_FAIL_PAUSE_JOINT = 0x03,
    ERROR_BT_TWS_MGR_PAUSE_JOINT_FAIL_TWS_DISC = 0x04,
    ERROR_BT_TWS_MGR_START_HO_FAIL_DISC_ALL = 0x05,
    ERROR_BT_TWS_MGR_START_HO_FAIL_NO_ACTION = 0x06,
    ERROR_BT_TWS_MGR_START_HO_FAIL_DISC_TWS = 0x07,
    ERROR_BT_TWS_MGR_MASTER_WAIT_DSP_TIMEOUT_FAIL = 0x08,
    ERROR_BT_TWS_MGR_START_HO_ABORT = 0x09,
    ERROR_BT_TWS_MGR_ERR_INFO3_END
} error_bt_tws_mgr_err_info3_t;

typedef enum {
    ERROR_BT_REJECT_CCMP = 0x01,
    ERROR_BT_RECONN_ICONNECT_TOO_MUCH = 0x02,
    ERROR_BT_RECONN_VID_TOO_MUCH = 0x03,
    ERROR_BT_CANCEL_UNSTABLE_TIMEOUT = 0x04,
    ERROR_BT_DTS_MGR_ERR_INFO3_END
} error_bt_dts_mgr_err_info3_t;

typedef enum {
    ERROR_BT_NV_ERR_READ_BD_ADDR = 0x01,
    ERROR_BT_NV_ERR_READ_EARBUD_NATURE = 0x02,
    ERROR_BT_NV_ERR_READ_DEVICE_NAME = 0x03,
    ERROR_BT_NV_ERR_WRITE_EARBUD_PDL = 0x04,
    ERROR_BT_NV_ERR_READ_EARBUD_PDL = 0x05,
    ERROR_BT_NV_ERR_WRITE_SINGLE_MOBILE_PDL = 0x06,
    ERROR_BT_NV_ERR_WRITE_MULI_MOBILE_PDL = 0x07,
    ERROR_BT_NV_ERR_READ_MOBILE_PDL = 0x08,
    ERROR_BT_NV_ERR_WRITE_MOBILE_PDL_ORDER = 0x09,
    ERROR_BT_NV_ERR_READ_MOBILE_PDL_ORDER = 0x0A,
    ERROR_BT_NV_ERR_WRITE_PEER_BD_ADDR = 0x0B,
    ERROR_BT_NV_ERR_READ_PEER_BD_ADDR = 0x0C,
    ERROR_BT_NV_ERR_WRITE_TOKEN = 0x0D,
    ERROR_BT_NV_ERR_READ_TOKEN = 0x0E,
    ERROR_BT_NV_ERR_WRITE_LOG_LEVEL = 0x0F,
    ERROR_BT_NV_ERR_READ_LOG_LEVEL = 0x10,
    ERROR_BT_NV_ERR_READ_RSSI = 0x11,
    ERROR_BT_NV_ERR_READ_MODEL_ID = 0x12,
    ERROR_BT_NV_ERR_READ_SN = 0x13,
    ERROR_BT_NV_ERR_READ_ALL_NV_DATA = 0x14,
    ERROR_BT_DATA_MGR_ERR_INFO3_END
} error_bt_data_mgr_err_info3_t;

typedef enum {
    ERROR_BT_AUTH_FAIL = 0x01,
    ERROR_BT_GAP_SERVICE_ERR_INFO3_END
} error_bt_gap_service_err_info3_t;

typedef enum {
    ERROR_BT_PDL_ERR_INVALID_ADDR = 0x01,
    ERROR_BT_PDL_ERR_INVALID_CRC = 0x02,
    ERROR_BT_PDL_ERR_EQUAL_EARBUDS_ADDR = 0x03,
    ERROR_BT_PDL_ERR_INFO3_END
} error_bt_pdl_err_info3_t;

typedef enum {
    EVENT_BT_GATT_BOX_BUFFER_FULL = 0x01,
    EVENT_BT_GATT_IPHONE_BUFFER_FULL = 0x02,
    EVENT_BT_GATT_DATA_SEND_FAIL = 0x03,
    EVENT_BT_GATT_PEER_DISC_ACL = 0x04,
    EVENT_BT_GATT_CONNECTION_TIMEOUT = 0x05,
    ERROR_BT_GATT_MGR_ERR_INFO3_END
} error_bt_gatt_mgr_err_info3_t;

typedef enum {
    ERROR_BT_STACK_GAP_ERR_MOBILE_DISC_ACL = 0x01,
    ERROR_BT_STACK_GAP_ERR_PEER_DISC_ACL = 0x02,
    ERROR_BT_STACK_GAP_ERR_LOCAL_DISC_ACL = 0x03,
    ERROR_BT_STACK_GAP_ERR_AUTH_FAILURE = 0x04,
    ERROR_BT_STACK_GAP_ERR_INFO3_END
} error_bt_stack_gap_err_info3_t;

typedef enum {
    ERROR_BT_SDP_ERR_SEARCH_RSP = 0x01,
    ERROR_BT_SDP_ERR_ATTR_RSP = 0x02,
    ERROR_BT_SDP_ERR_SEARCH_ATTR_RSP = 0x03,
    ERROR_BT_SDP_RSP_ERR_SEARCH_REQ = 0x04,
    ERROR_BT_SDP_RSP_ERR_SEARCH_RSP = 0x05,
    ERROR_BT_SDP_RSP_ERR_ATTR_REQ = 0x06,
    ERROR_BT_SDP_RSP_ERR_ATTR_RSP = 0x07,
    ERROR_BT_SDP_RSP_ERR_SEARCH_ATTR_REQ = 0x08,
    ERROR_BT_SDP_RSP_ERR_SEARCH_ATTR_RSP = 0x09,
    ERROR_BT_SDP_RSP_ERR_OTHER = 0x0A,
    ERROR_BT_STACK_SDP_ERR_INFO3_END
} error_bt_stack_sdp_err_info3_t;

typedef enum {
    ERROR_BT_HFP_ERR_LINK_LOSS = 0x01,
    ERROR_BT_HFP_AT_CMD_ERR_ATD = 0x02,
    ERROR_BT_HFP_AT_CMD_ERR_ATA = 0x03,
    ERROR_BT_HFP_AT_CMD_ERR_BRSF = 0x04,
    ERROR_BT_HFP_AT_CMD_ERR_BAC = 0x05,
    ERROR_BT_HFP_AT_CMD_ERR_CHUP = 0x06,
    ERROR_BT_HFP_AT_CMD_ERR_CHLD = 0x07,
    ERROR_BT_STACK_HFP_ERR_INFO3_END
} error_bt_stack_hfp_err_info3_t;

typedef enum {
    ERROR_BT_AVRCP_ERR_NO_CONNECT = 0x01,
    ERROR_BT_AVRCP_ERR_PASSTHROUGH_REQ_TIMEOUT = 0x02,
    ERROR_BT_AVRCP_ERR_GET_CAPY_TIMEOUT = 0x03,
    ERROR_BT_AVRCP_ERR_REG_NOTIFICATION_TIMEOUT = 0x04,
    ERROR_BT_AVRCP_ERR_GET_PLAY_STATUS_TIMEOUT = 0x05,
    ERROR_BT_AVRCP_ERR_GET_ELEMENT_ATTR_TIMEOUT = 0x06,
    ERROR_BT_STACK_AVRCP_ERR_INFO3_END
} error_bt_stack_avrcp_err_info3_t;

typedef enum {
    ERROR_BT_SPP_TWS_ADD_PORT_FAIL = 0x01,
    ERROR_BT_SPP_TWS_OPEN_PORT_FAIL = 0x02,
    ERROR_BT_SPP_TWS_FAIL_REASON_EXCEED_MTU = 0x03,
    ERROR_BT_SPP_TWS_FAIL_REASON_NO_CREDIT = 0x04,
    ERROR_BT_SPP_TWS_FAIL_REASON_NO_AVAILABLE_PORT = 0x05,
    ERROR_BT_SPP_TWS_FAIL_REASON_NO_MEMORY = 0x06,
    ERROR_BT_STACK_SPP_ERR_INFO3_END
} error_bt_stack_spp_err_info3_t;

typedef enum {
    ERROR_BT_AVDTP_START_IN_ERROR_STATE = 0x01,
    ERROR_BT_AVDTP_SUSPEND_IN_ERROR_STATE = 0x02,
    ERROR_BT_AVDTP_RECV_DATA_IN_AVDTP = 0x03,
    ERROR_BT_STACK_AVDTP_ERR_INFO3_END
} error_bt_stack_avdtp_err_info3_t;

typedef enum {
    ERROR_BT_RFCOMM_DLCIX_SEND_FAIL_UNREADY = 0x01,
    ERROR_BT_RFCOMM_DLCIX_SEND_FAIL_FC_OFF = 0x02,
    ERROR_BT_RFCOMM_DLCIX_SEND_FAIL_NO_CREDIT = 0x03,
    ERROR_BT_STACK_RFCOMM_ERR_INFO3_END
} error_bt_stack_rfcomm_err_info3_t;

typedef enum {
    ERROR_BT_HCI_SECU_ERR_AUTHORIZE_FAIL = 0x01,
    ERROR_BT_HCI_SECU_ERR_REAUTHENTICATE = 0x02,
    ERROR_BT_HCI_SECU_ERR_REAUTHENTICATE_MAX_NUM = 0x03,
    ERROR_BT_HCI_ACL_DATA_RESTRICTED_FLOW_CONTROL = 0x04,
    ERROR_BT_STACK_HCI_ERR_INFO3_END
} error_bt_stack_hci_err_info3_t;

typedef enum {
    ERROR_BT_ASCP_RECV_L2CAP_ECHO_FAIL = 0x01,
    ERROR_BT_STACK_ASCP_ERR_INFO3_END
} error_bt_stack_ascp_err_info3_t;

typedef enum {
    ERROR_BT_ASMP_RECV_ISO_STREAMID_FAIL = 0x01,
    ERROR_BT_ASMP_RECV_CONFIGED_ISO_PARAM_FAIL = 0x02,
    ERROR_BT_ASMP_RECONFIG_ISO_PARAM_FAIL = 0x03,
    ERROR_BT_ASMP_CONFIG_ISO_PARAM_FAIL = 0x04,
    ERROR_BT_ASMP_ENABLE_ISO_EVT_WRONG_STATUS_FAIL = 0x05,
    ERROR_BT_ASMP_ENABLE_ISO_EVT_WRONG_ISO_HANDLE_FAIL = 0x06,
    ERROR_BT_ASMP_ENABLE_ISO_EVT_UNCONFIG_FAIL = 0x07,
    ERROR_BT_ASMP_DISABLE_ISO_EVT_WRONG_STATUS_FAIL = 0x08,
    ERROR_BT_ASMP_DISABLE_ISO_EVT_WRONG_ISO_HANDLE_FAIL = 0x09,
    ERROR_BT_ASMP_DISABLE_ISO_EVT_UNCONFIG_FAIL = 0x0A,
    ERROR_BT_ASMP_SETUPDATAPATH_WRONG_STREAMID_FAIL = 0x0B,
    ERROR_BT_ASMP_SETUPDATAPATH_UNCONFIG_FAIL = 0x0C,
    ERROR_BT_ASMP_SETUPDATAPATH_WRONG_ISO_STATUS_FAIL = 0x0D,
    ERROR_BT_ASMP_REMOVEDATAPATH_WRONG_STREAMID_FAIL = 0x0E,
    ERROR_BT_ASMP_REMOVEDATAPATH_UNCONFIG_FAIL = 0x0F,
    ERROR_BT_ASMP_REMOVEDATAPATH_WRONG_ISO_STATUS_FAIL = 0x10,
    ERROR_BT_ASMP_REMOVE_ISO_CHANNEL_WRONG_STREAMID_FAIL = 0x11,
    ERROR_BT_STACK_ASMP_ERR_INFO3_END
} error_bt_stack_asmp_err_info3_t;

typedef enum {
    ERROR_BT_JITWS_GET_CONN_HDL_FAIL = 0x01,
    ERROR_BT_JITWS_COLLECT_BTC_DATA_FAIL = 0x02,
    ERROR_BT_JITWS_ADD_START_MSG_FAIL = 0x03,
    ERROR_BT_JITWS_COLLECT_HCI_DATA_FAIL = 0x04,
    ERROR_BT_JITWS_COLLECT_L2CAP_DATA_FAIL = 0x05,
    ERROR_BT_JITWS_COLLECT_AVDTP_DATA_FAIL = 0x06,
    ERROR_BT_JITWS_COLLECT_RFCOMM_DATA_FAIL = 0x07,
    ERROR_BT_JITWS_COLLECT_HFP_DATA_FAIL = 0x08,
    ERROR_BT_JITWS_COLLECT_AVCTP_DATA_FAIL = 0x09,
    ERROR_BT_JITWS_COLLECT_AVRCP_DATA_FAIL = 0x0A,
    ERROR_BT_JITWS_ADD_BTC_DATA_FAIL = 0x0B,
    ERROR_BT_JITWS_SEND_STACK_SYNC_DATA_FAIL = 0x0C,
    ERROR_BT_JITWS_SERVICE_FUNC_NULL = 0x0D,
    ERROR_BT_JITWS_SERVICE_FUNC_FAIL = 0x0E,
    ERROR_BT_JITWS_ADD_SERVICE_DATA_FAIL = 0x0F,
    ERROR_BT_JITWS_ADD_SERVICE_STATE_FAIL = 0x10,
    ERROR_BT_JITWS_ADD_END_MSG_FAIL = 0x11,
    ERROR_BT_JITWS_SEND_SERVICE_SYNC_DATA_FAIL = 0x12,
    ERROR_BT_JITWS_START_JOINT_TIMEOUT = 0x13,
    ERROR_BT_JITWS_SYNC_BTC_DATA_FAIL = 0x14,
    ERROR_BT_JITWS_RECV_SLAVE_START_JOINT_FAIL = 0x15,
    ERROR_BT_JITWS_MASTER_OPEN_JOINT_FAIL = 0x16,
    ERROR_BT_JITWS_SLAVE_OPEN_JOINT_FAIL = 0x17,
    ERROR_BT_JITWS_MASTER_PAUSE_JOINT_FAIL = 0x18,
    ERROR_BT_JITWS_SLAVE_PAUSE_JOINT_FAIL = 0x19,
    ERROR_BT_JITWS_MASTER_STOP_JOINT_FAIL = 0x1A,
    ERROR_BT_JITWS_SLAVE_STOP_JOINT_FAIL = 0x1B,
    ERROR_BT_JITWS_HO_PREPARE_FAIL = 0x1C,
    ERROR_BT_JITWS_HO_PREPARE_FINISH_FAIL = 0x1D,
    ERROR_BT_JITWS_MASTER_HO_START_FAIL = 0x1E,
    ERROR_BT_JITWS_SLAVE_HO_START_FAIL = 0x1F,
    ERROR_BT_JITWS_MASTER_HO_FINISH_FAIL = 0x20,
    ERROR_BT_JITWS_SLAVE_HO_FINISH_FAIL = 0x21,
    ERROR_BT_JITWS_MASTER_WAIT_HO_FINISH_FAIL = 0x22,
    ERROR_BT_JITWS_SLAVE_WAIT_HO_FINISH_FAIL = 0x23,
    ERROR_BT_JITWS_HO_ROLE_SWITCH_FAIL = 0x24,
    ERROR_BT_JITWS_SLAVE_WAIT_DSP_TIMEOUT_FAIL = 0x25,
    ERROR_BT_STACK_JITWS_ERR_INFO3_END
} error_bt_stack_jitws_err_info3_t;

typedef enum {
    ERROR_BT_DADP_START_TOGGLE_ACCORD_AUDIO_DELAY_FAIL = 0x01,
    ERROR_BT_DADP_START_TOGGLE__ACCORD_BT_CLK_FAIL = 0x02,
    ERROR_BT_DADP_GET_TOGGLE_CNT_FAIL = 0x03,
    ERROR_BT_STACK_DADP_ERR_INFO3_END
} error_bt_stack_dadp_err_info3_t;

typedef enum {
    ERROR_BT_HCI_MOBILE_EXIT_SNIFF_FAIL = 0x01,
    ERROR_BT_HCI_PEER_EXIT_SNIFF_FAIL = 0x02,
    ERROR_BT_HCI_EXIT_SNIFF_FAIL_INFO3_END
} error_bt_hci_exit_sniff_fail_info3_t;

typedef enum {
    ERROR_BT_HCI_MOBILE_ROLE_SWITCH_FAIL = 0x01,
    ERROR_BT_HCI_PEER_ROLE_SWITCH_FAIL = 0x02,
    ERROR_BT_HCI_ROLE_SWITCH_FAIL_INFO3_END
} error_bt_hci_role_switch_fail_info3_t;

typedef enum {
    ERROR_OPEN_ACC_FAILURE = 0x01,
    ERROR_OPEN_PROXIMITY_FAILURE = 0x02,
    ERROR_OPEN_CAP_FAILURE = 0x03,
    ERROR_OPEN_TRANSDUCER_INFO3_END
} error_open_transducer_info3_t;

typedef enum {
    ERROR_UPGRADE_FAIL_NOT_IN_BOX = 0x01,
    ERROR_UPGRADE_FAIL_TWS_DISCONNECTED = 0x02,
    ERROR_UPGRADE_FAIL_HIGH_LOSS = 0x03,
    ERROR_UPGRADE_FAIL_DOWNLOAD_TIMEOUT = 0x04,
    ERROR_UPGRADE_FAIL_HEADER_PARSE_ERROR = 0x05,
    ERROR_UPGRADE_FAIL_BOX_MOVE_CHECK_FAIL = 0x06,
    ERROR_UPGRADE_FAIL_AUDIO_RES_MOVE_CHECK_FAIL = 0x07,
    ERROR_UPGRADE_FAIL_DATACHECK = 0x08,
    ERROR_UPGRADE_FAIL_REPORT_VALID_TIMEOUT = 0x09,
    ERROR_UPGRADE_FAIL_CREATE_TIMER = 0x0A,
    ERROR_UPGRADE_FAIL_BOX_CLOSED = 0x0B,
    ERROR_FOREGROUND_UPGRADE_FAILURE_INFO3_END
} error_foreground_upgrade_failure_info3_t;

/**
 * @}
 */
#endif /* SOCAUDIO_USER_ERROR_LOG_H */
